\hypertarget{class_beautiful_soup_1_1_beautiful_soup}{
\section{BeautifulSoup.BeautifulSoup Class Reference}
\label{class_beautiful_soup_1_1_beautiful_soup}\index{BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}}
}


Inheritance diagram for BeautifulSoup.BeautifulSoup:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=400pt]{class_beautiful_soup_1_1_beautiful_soup__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for BeautifulSoup.BeautifulSoup:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=400pt]{class_beautiful_soup_1_1_beautiful_soup__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a64048e3b4fee0ef22cf83b95008f0f25}{
def {\bfseries \_\-\_\-init\_\-\_\-}}
\label{class_beautiful_soup_1_1_beautiful_soup_a64048e3b4fee0ef22cf83b95008f0f25}

\item 
def \hyperlink{class_beautiful_soup_1_1_beautiful_soup_a251f55de4fb2fcc7e9a37ae61d3f5e48}{start\_\-meta}
\end{DoxyCompactItemize}
\subsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a825e19e9c3ffc0690c322fb9b8b17a68}{
{\bfseries originalEncoding}}
\label{class_beautiful_soup_1_1_beautiful_soup_a825e19e9c3ffc0690c322fb9b8b17a68}

\item 
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a354715ed6061e605ccde50e52e04df15}{
{\bfseries declaredHTMLEncoding}}
\label{class_beautiful_soup_1_1_beautiful_soup_a354715ed6061e605ccde50e52e04df15}

\end{DoxyCompactItemize}
\subsection*{Static Public Attributes}
\begin{DoxyCompactItemize}
\item 
tuple {\bfseries SELF\_\-CLOSING\_\-TAGS}
\item 
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a161d0894450bef147a5b90c45e0c5d6b}{
tuple {\bfseries PRESERVE\_\-WHITESPACE\_\-TAGS} = set(\mbox{[}'pre', 'textarea'\mbox{]})}
\label{class_beautiful_soup_1_1_beautiful_soup_a161d0894450bef147a5b90c45e0c5d6b}

\item 
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_aa75781a0a2fb34d649ebd7bba34144aa}{
dictionary {\bfseries QUOTE\_\-TAGS} = \{'script' : None, 'textarea' : None\}}
\label{class_beautiful_soup_1_1_beautiful_soup_aa75781a0a2fb34d649ebd7bba34144aa}

\item 
tuple {\bfseries NESTABLE\_\-INLINE\_\-TAGS}
\item 
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a5918e91bfbc6d74c2d25e2c97453e029}{
tuple {\bfseries NESTABLE\_\-BLOCK\_\-TAGS} = ('blockquote', 'div', 'fieldset', 'ins', 'del')}
\label{class_beautiful_soup_1_1_beautiful_soup_a5918e91bfbc6d74c2d25e2c97453e029}

\item 
dictionary {\bfseries NESTABLE\_\-LIST\_\-TAGS}
\item 
dictionary {\bfseries NESTABLE\_\-TABLE\_\-TAGS}
\item 
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a3ce90dd08c248dd1f9a1ea9ec8da8b42}{
tuple {\bfseries NON\_\-NESTABLE\_\-BLOCK\_\-TAGS} = ('address', 'form', 'p', 'pre')}
\label{class_beautiful_soup_1_1_beautiful_soup_a3ce90dd08c248dd1f9a1ea9ec8da8b42}

\item 
tuple {\bfseries RESET\_\-NESTING\_\-TAGS}
\item 
tuple {\bfseries NESTABLE\_\-TAGS}
\item 
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_ae13e5b2641047ba9ef411554a1447d06}{
tuple {\bfseries CHARSET\_\-RE} = re.compile(\char`\"{}(($^\wedge$$|$;)$\backslash$s$\ast$charset=)(\mbox{[}$^\wedge$;\mbox{]}$\ast$)\char`\"{}, re.M)}
\label{class_beautiful_soup_1_1_beautiful_soup_ae13e5b2641047ba9ef411554a1447d06}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\begin{DoxyVerb}This parser knows the following facts about HTML:

* Some tags have no closing tag and should be interpreted as being
  closed as soon as they are encountered.

* The text inside some tags (ie. 'script') may contain tags which
  are not really part of the document and which should be parsed
  as text, not tags. If you want to parse the text as tags, you can
  always fetch it and parse it explicitly.

* Tag nesting rules:

  Most tags can't be nested at all. For instance, the occurance of
  a <p> tag should implicitly close the previous <p> tag.

   <p>Para1<p>Para2
    should be transformed into:
   <p>Para1</p><p>Para2

  Some tags can be nested arbitrarily. For instance, the occurance
  of a <blockquote> tag should _not_ implicitly close the previous
  <blockquote> tag.

   Alice said: <blockquote>Bob said: <blockquote>Blah
    should NOT be transformed into:
   Alice said: <blockquote>Bob said: </blockquote><blockquote>Blah

  Some tags can be nested, but the nesting is reset by the
  interposition of other tags. For instance, a <tr> tag should
  implicitly close the previous <tr> tag within the same <table>,
  but not close a <tr> tag in another table.

   <table><tr>Blah<tr>Blah
    should be transformed into:
   <table><tr>Blah</tr><tr>Blah
    but,
   <tr>Blah<table><tr>Blah
    should NOT be transformed into
   <tr>Blah<table></tr><tr>Blah

Differing assumptions about tag nesting rules are a major source
of problems with the BeautifulSoup class. If BeautifulSoup is not
treating as nestable a tag your page author treats as nestable,
try ICantBelieveItsBeautifulSoup, MinimalSoup, or
BeautifulStoneSoup before writing your own subclass.\end{DoxyVerb}
 

\subsection{Member Function Documentation}
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a251f55de4fb2fcc7e9a37ae61d3f5e48}{
\index{BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}!start\_\-meta@{start\_\-meta}}
\index{start\_\-meta@{start\_\-meta}!BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}}
\subsubsection[{start\_\-meta}]{\setlength{\rightskip}{0pt plus 5cm}def BeautifulSoup.BeautifulSoup.start\_\-meta (
\begin{DoxyParamCaption}
\item[{}]{self, }
\item[{}]{attrs}
\end{DoxyParamCaption}
)}}
\label{class_beautiful_soup_1_1_beautiful_soup_a251f55de4fb2fcc7e9a37ae61d3f5e48}
\begin{DoxyVerb}Beautiful Soup can detect a charset included in a META tag,
try to convert the document to that charset, and re-parse the
document from the beginning.\end{DoxyVerb}
 

\subsection{Member Data Documentation}
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a07e4c6b6317e2c84ef50a693db0a6034}{
\index{BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}!NESTABLE\_\-INLINE\_\-TAGS@{NESTABLE\_\-INLINE\_\-TAGS}}
\index{NESTABLE\_\-INLINE\_\-TAGS@{NESTABLE\_\-INLINE\_\-TAGS}!BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}}
\subsubsection[{NESTABLE\_\-INLINE\_\-TAGS}]{\setlength{\rightskip}{0pt plus 5cm}tuple BeautifulSoup.BeautifulSoup.NESTABLE\_\-INLINE\_\-TAGS\hspace{0.3cm}{\ttfamily  \mbox{[}static\mbox{]}}}}
\label{class_beautiful_soup_1_1_beautiful_soup_a07e4c6b6317e2c84ef50a693db0a6034}
{\bfseries Initial value:}
\begin{DoxyCode}
('span', 'font', 'q', 'object', 'bdo', 'sub', 'sup',
                            'center')
\end{DoxyCode}
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a9adaad98d4fc73a424badf186638b652}{
\index{BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}!NESTABLE\_\-LIST\_\-TAGS@{NESTABLE\_\-LIST\_\-TAGS}}
\index{NESTABLE\_\-LIST\_\-TAGS@{NESTABLE\_\-LIST\_\-TAGS}!BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}}
\subsubsection[{NESTABLE\_\-LIST\_\-TAGS}]{\setlength{\rightskip}{0pt plus 5cm}dictionary BeautifulSoup.BeautifulSoup.NESTABLE\_\-LIST\_\-TAGS\hspace{0.3cm}{\ttfamily  \mbox{[}static\mbox{]}}}}
\label{class_beautiful_soup_1_1_beautiful_soup_a9adaad98d4fc73a424badf186638b652}
{\bfseries Initial value:}
\begin{DoxyCode}
{ 'ol' : [],
                           'ul' : [],
                           'li' : ['ul', 'ol'],
                           'dl' : [],
                           'dd' : ['dl'],
                           'dt' : ['dl'] }
\end{DoxyCode}
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a2e3dd7adf2fe79643a8b99ebdfa640f0}{
\index{BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}!NESTABLE\_\-TABLE\_\-TAGS@{NESTABLE\_\-TABLE\_\-TAGS}}
\index{NESTABLE\_\-TABLE\_\-TAGS@{NESTABLE\_\-TABLE\_\-TAGS}!BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}}
\subsubsection[{NESTABLE\_\-TABLE\_\-TAGS}]{\setlength{\rightskip}{0pt plus 5cm}dictionary BeautifulSoup.BeautifulSoup.NESTABLE\_\-TABLE\_\-TAGS\hspace{0.3cm}{\ttfamily  \mbox{[}static\mbox{]}}}}
\label{class_beautiful_soup_1_1_beautiful_soup_a2e3dd7adf2fe79643a8b99ebdfa640f0}
{\bfseries Initial value:}
\begin{DoxyCode}
{'table' : [],
                           'tr' : ['table', 'tbody', 'tfoot', 'thead'],
                           'td' : ['tr'],
                           'th' : ['tr'],
                           'thead' : ['table'],
                           'tbody' : ['table'],
                           'tfoot' : ['table'],
                           }
\end{DoxyCode}
\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a2fe687596fe2158153997b253f905bc9}{
\index{BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}!NESTABLE\_\-TAGS@{NESTABLE\_\-TAGS}}
\index{NESTABLE\_\-TAGS@{NESTABLE\_\-TAGS}!BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}}
\subsubsection[{NESTABLE\_\-TAGS}]{\setlength{\rightskip}{0pt plus 5cm}tuple BeautifulSoup.BeautifulSoup.NESTABLE\_\-TAGS\hspace{0.3cm}{\ttfamily  \mbox{[}static\mbox{]}}}}
\label{class_beautiful_soup_1_1_beautiful_soup_a2fe687596fe2158153997b253f905bc9}
{\bfseries Initial value:}
\begin{DoxyCode}
buildTagMap([], NESTABLE_INLINE_TAGS, NESTABLE_BLOCK_TAGS,
                                NESTABLE_LIST_TAGS, NESTABLE_TABLE_TAGS)
\end{DoxyCode}


Reimplemented from \hyperlink{class_beautiful_soup_1_1_beautiful_stone_soup}{BeautifulSoup.BeautifulStoneSoup}.

\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a28fad7b1a8dbeca45096341c2cbae51c}{
\index{BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}!RESET\_\-NESTING\_\-TAGS@{RESET\_\-NESTING\_\-TAGS}}
\index{RESET\_\-NESTING\_\-TAGS@{RESET\_\-NESTING\_\-TAGS}!BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}}
\subsubsection[{RESET\_\-NESTING\_\-TAGS}]{\setlength{\rightskip}{0pt plus 5cm}tuple BeautifulSoup.BeautifulSoup.RESET\_\-NESTING\_\-TAGS\hspace{0.3cm}{\ttfamily  \mbox{[}static\mbox{]}}}}
\label{class_beautiful_soup_1_1_beautiful_soup_a28fad7b1a8dbeca45096341c2cbae51c}
{\bfseries Initial value:}
\begin{DoxyCode}
buildTagMap(None, NESTABLE_BLOCK_TAGS, 'noscript',
                                     NON_NESTABLE_BLOCK_TAGS,
                                     NESTABLE_LIST_TAGS,
                                     NESTABLE_TABLE_TAGS)
\end{DoxyCode}


Reimplemented from \hyperlink{class_beautiful_soup_1_1_beautiful_stone_soup}{BeautifulSoup.BeautifulStoneSoup}.

\hypertarget{class_beautiful_soup_1_1_beautiful_soup_a95b33b9337fc1c99db2570baf4dad2fe}{
\index{BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}!SELF\_\-CLOSING\_\-TAGS@{SELF\_\-CLOSING\_\-TAGS}}
\index{SELF\_\-CLOSING\_\-TAGS@{SELF\_\-CLOSING\_\-TAGS}!BeautifulSoup::BeautifulSoup@{BeautifulSoup::BeautifulSoup}}
\subsubsection[{SELF\_\-CLOSING\_\-TAGS}]{\setlength{\rightskip}{0pt plus 5cm}tuple BeautifulSoup.BeautifulSoup.SELF\_\-CLOSING\_\-TAGS\hspace{0.3cm}{\ttfamily  \mbox{[}static\mbox{]}}}}
\label{class_beautiful_soup_1_1_beautiful_soup_a95b33b9337fc1c99db2570baf4dad2fe}
{\bfseries Initial value:}
\begin{DoxyCode}
buildTagMap(None,
                                    ('br' , 'hr', 'input', 'img', 'meta',
                                    'spacer', 'link', 'frame', 'base', 'col'))
\end{DoxyCode}


Reimplemented from \hyperlink{class_beautiful_soup_1_1_beautiful_stone_soup}{BeautifulSoup.BeautifulStoneSoup}.



The documentation for this class was generated from the following file:\begin{DoxyCompactItemize}
\item 
BeautifulSoup.py\end{DoxyCompactItemize}
